googologywikiaorg-20200223-history
User blog:Ikosarakt1/Formal definition of tetrational arrays
A few notes firstly: *\(\#\) represents the remainder of an array. *Batch of unfilled separators means that it is either first of separators or the separators immediately after \(1\). *In my notation, separators are written in their natural polynomial form (without commas and nested separators), i.e. \((0,1)\) should be written as \((X^X)\), and \(((1) 2) = (X^{(X^X)2})\). It allows to avoid some irritations with default \(1\) in the main part of array and \(0\) in the nested one. *The expression \(A \&\ bp\) means A array of a's using the prime p. If the prime is unspecified, it means that \(A \&\ b\) = \(A \&\ bb\). *For the Rule M3, rank of \((A)\) and \((B)\) can be determined when we put that separators on my algorithm of ranking separators (notice the similarity with Chris Bird's nested arrays). *The main set of rules cannot be applied until the expression contains the \(\&\) symbol. *Array of rules must be considered starting from the bottom exponent to the topmost. *A and B represents the structures that contain X, numbers and closed under addition, multiplication and exponentiation (i.e. power towers). *The exponent level of the each term can be computed if we rewrite the power tower in the linear form and count all ^ that separate two \(X\)'s, e.g. in the expression \(X^{X^2*2+X*2+2} \&\ bp\) the term "2" has exponent level 1. *Like Chris Bird does, I've sometimes used inverted commas to represent the repeatedly expanding string (in the Rule A4, and only when the normal \(\{\}\) not used so far). *\(X\) can be used as a shorthand for \(X^1\) and \(X*1\). Main Rules Rule M1 Condition: Only 2 entries, all in the main row. \(\{a,b\} = a^b\) Rule M2 Condition: 2nd entry is 1. \(\{a,1\} = a\) Rule M3 Condition: \((A) < (B)\) or 1 ends the array. \(\{\# (A) 1 (B) \#\} = \{\# (B) \#\}\) \(\{\# (S) 1\} = \{\#\}\) Rule M4 Condition: 2 entries in the main row followed by the batch of unfilled separators and non-1 entry immediately after that. \(\{a,b (A) \cdots 1 (B) c \#\} = \{A \&\ ab (A) \cdots B \&\ ab (B) c-1 \#\}\) Rule M5 Condition: 2 entries in the main row followed by the batch of unfilled separators, string of 1's and non-1 entry. \(\{a,b (A) \cdots 1 (B) 1,1,...,1,1,c \#\} = \{A \&\ ab (A) \cdots B \&\ ab (B) a,a,...,a,\{a,b-1 (A) \cdots 1 (B) 1,1,...,1,1,c \#\},c-1 \#\}\) Rule M6 Condition: string of 1's in the main row, from 3rd entry to nth followed by non-1 entry. \(\{a,b,1,1,...,1,1,c \#\} = \{a,a,a,a,...,a,\{a,b-1,1,1,...,1,1,c \#\},c-1 \#\}\) Rule M7 Condition: Rules M1-M6 don't apply. \(\{a,b,c \#\} = \{a,\{a,b-1,c \#\},c-1 \#\}\) "Array of" rules Rule A1 Condition: \(X\) is the rightmost term of the polynomial at the current exponent level. \(\#*X \&\ bp = \#*p \&\ bp\) \(\#+X \&\ bp = \#+p \&\ bp\) Rule A2 Condition: \(A\) contains finite number as the last term of polynomial. \(\#^{A+1} \&\ bp = \#^A*X \&\ bp\) Rule A3 Condition: \(n\) is the rightmost term of the polynomial at the current exponent level. \(\#^B*n \&\ bp = \#^B*(n-1)+\#^B \&\ bp\) Rule A4 Condition: \(\#_1\) and \(\#_2\) at the first exponent level and they are rightmost terms of a polynomial. \(\#_1+\#_2 \&\ bp = '\#_1 \&\ bp (\#_1) \#_2 \&\ bp'\) Sub-rule A4a Sub-condition: \(\#_1\) or \(\#_2\) is a finite number or all they doesn't exist. \(n+\#_2 \&\ bp = 'b,b,b,\cdots,b,b,b,\#_2 \&\ bp'\) (p b's from the left to \(\#_2\)) \(\#_1+n \&\ bp = '\#_1 \&\ bp (\#_1) b,b,b,\cdots,b,b,b'\) (p b's from the right to \((\#_1)\)) \(n \&\ bp = 'b,b,b,\cdots,b,b,b'\) (p b's) Rule A5 Condition: there exists \(\uparrow\uparrow\) symbol followed by a number. \(X \uparrow\uparrow n \&\ bp = X^{X \uparrow\uparrow (n-1)} \&\ bp\) \(X \uparrow\uparrow 0 \&\ bp = 1\) Rule A6 Condition: X exists to the right of \(uparrow\uparrow\). \(X \uparrow\uparrow X = X \uparrow\uparrow p\) Rule A7 Condition: Rules A1-A6 don't apply. \(X^{A_1} \&\ bp = X^{X^{A_2}*n+B} \&\ bp\). Algorithm for comparison of two separators Step 1 There are two cases: 1) Separator in the form \(n_1*B^{A_1}+P_1\), where \(A_1\) is not a number and P is the remainder of the polynomial. Transform \(n_1*B^{A_1}+P_1 = n_1*B^{n_2*X^{A_2}+P_2}+P_1\) and repeat the Step 1. 2) Separator in the form \(n_1*B^m+P_1\), where m is a number and \(P_1\) is a remainder of the polynomial. Take \(Pol(A)=n_1*X^m+P_1\) and replace \(Pol(A)\) in the power tower by the number 1. Step 2 Now, \(Pol(A)\) is in the form \(n_1*X^m+n_2*X^{m-1}+n_3*X^{m-2}+ \cdots +n_{m+1}\) and \(Pol(B)\) is in the form \(a_1*X^b+a_2*X^{b-1}+a_3*X^{b-2}+ \cdots +a_{b+1}\). There are three cases: If \(mb\), then \((A)>(B)\) If \(m=b\), then go to the Step 3. Step 3 Take \(x=1\) and repeat until \(xa_x\), then \((A)>(B)\) If \(n_x